Crate pnet_transport
source ·Expand description
Support for implementing transport layer protocols
The transport module provides the ability to send and receive packets at the transport layer using IPv4 or IPv6. It also enables layer 3 networking for specific transport protocols, using IPv4 only.
Note that this is limited by operating system support - for example, on OS X and FreeBSD, it is impossible to implement protocols which are already implemented in the kernel such as TCP and UDP.
Macros
- Create an iterator for some packet type.
Structs
- Structure used for holding all configurable options for describing possible options for transport channels.
- An iterator over packets of type
IcmpPacket
. - An iterator over packets of type
Icmpv6Packet
. - An iterator over packets of type
Ipv4Packet
. - An iterator over packets of type
TcpPacket
. - Structure used for receiving at the transport layer. Should be created with
transport_channel()
. - Structure used for sending at the transport layer. Should be created with
transport_channel()
. - An iterator over packets of type
UdpPacket
.
Enums
- Type of transport channel to present.
- Represents a transport layer protocol.
Functions
- Return a packet iterator with packets of type
IcmpPacket
for some transport receiver. - Return a packet iterator with packets of type
Icmpv6Packet
for some transport receiver. - Return a packet iterator with packets of type
Ipv4Packet
for some transport receiver. - Return a packet iterator with packets of type
TcpPacket
for some transport receiver. - Create a new
(TransportSender, TransportReceiver)
pair. - Create a new
(TransportSender, TransportReceiver)
pair using the additional options specified. - Return a packet iterator with packets of type
UdpPacket
for some transport receiver.